Recently, flash memory has rapidly substituted for Hard Disk Drive (HDD) and extended its use from the market of consumer appliances (e.g., laptop and desktop computers) to the fields of business servers and data centers. Unlike the HDD, the flash memory does not allow overwrite, has reading in pages, writing in pages, and erasing in blocks as its basic operations, allows bad blocks, and has a limited lifetime. Therefore, to develop a high-performance, high-reliability storage device using the flash memory as a storage medium, there is a need for a technique of effectively taking the advantages of the flash memory, while overcoming the limitations of the flash memory. The FTL mainly plays this role. The FTL provides a block storage device system capable of overwriting to a host system by introducing the concept of mapping between logical sector addresses and flash memory physical addresses in order to overcome the limitation of the flash memory that it is not overwritable. Also, the FTL prevents future use of bad blocks that may be produced during an operation by means of remapping or performs a wear-leveling function that prevents a specific physical block from being excessively worn out.
Due to the recent scaling-down of a flash memory manufacturing process, the reliability of the flash memory has been decreased. In this context, the role and function of the FTL becomes more important in ensuring the reliability of a flash storage system.